package fr.afcepf.atod21.business;

import java.util.List;

import fr.afcepf.atod21.entity.Organisme;
import fr.afcepf.atod21.entity.Stagiaire;
import fr.afcepf.atod21.exception.Atod21Exception;
/**
 * Definition des methodes metier utilisees par 'application contenant les regles de gestion.
 * @author Stagiaire
 *
 */
public interface IBusinessStagiaire {
    /**
     *
     * @param nom le parametre nom.
     * @return
    <code>
        <ul>
            <li>Liste contenant les {@link Stagiaire} si il en existe contenant le nom passe en parametre</li>
            <li>null si aucun ne correspond au critere de recherche</li>
        </ul>
    </code>
     */
    List<Stagiaire>rechercher(String nom);
    /**
     *
     * @param idOrganisme le parametre idOrganisme
     * @return   <code>
        <ul>
            <li>Les  {@link Stagiaire} recherche par {@link Organisme}}</li>
            <li>null si aucun ne correspond au critere de recherche</li>
        </ul>
    </code>
     */
    List<Stagiaire>rechercher(int idOrganisme);
    /**
     * @param stag le parametre stagiaire
     * @return un ajout de stagiaire.
     * @throws Atod21Exception blabla.
     */
    Stagiaire ajouter(Stagiaire stag)throws Atod21Exception;
    /**
     * @param stag le parametre stagiaire
     * @return un renvoi de stagiaire
     * @throws Atod21Exception blabla
     */
    Stagiaire renvoi(Stagiaire stag) throws Atod21Exception;
}
